
		\centering
		\begin{center}
			\begin{tikzpicture}[-stealth,scale=1.5,transform shape,node distance = 1em]
				\tikzstyle{every node}=[font=\small,scale=0.8]
				\begin{scope}[minimum height = 1pt]
					\tikzstyle{inout}=[trapezium, trapezium left angle=60, trapezium right angle=120, draw] %%输入输出框
					\tikzstyle{point}=[coordinate,on grid,] % 像素点,用于连接转移线
					\tikzstyle{mid}=[rectangle,  opacity=0,draw] 
					\tikzstyle{end}=[rectangle, rounded corners, draw]   %%教材上的起止框
					\tikzstyle{endn}=[rounded rectangle, draw]   %%新版的起止框
					\tikzstyle{exec}=[rectangle, draw]    %%执行框 execute
					\tikzstyle{io} = [trapezium, trapezium left angle=70, trapezium right angle=110, minimum width=3cm, minimum height=1cm, text centered, draw=black]  % 平行四边形
					\tikzstyle{decide}=[diamond,aspect=2,draw,thin]   %%判断框 opacity=0.3
					
					% 节点 直线
					\node[end] (s) at (0,0) {开始};
					\node[anchor=south,inner sep=2pt] (m1) at ([yshift=-2em]s.south) {\color{blue}PUSH($\#0$)};
					\node[anchor=south] (m2) at ([yshift=-2em]m1.south) {\color{blue}NEXT(w)};
					\node [exec,align=center] (e1) at ([yshift=-2em]m2.south) {\color{blue}查LR(0)分析表:  \\ \color{blue}$R(Xk,w)=?$};
					\node[decide] (d1) [below = of e1] {\color{blue}R=空?};
					\node (point1) at ([yshift=-1em]d1.south) {};
					\node[end] (end) at  ([yshift=-2em]point1.south) {\color{blue}结束};
					
					% 右边
					
					\node [exec,align=left] (e2) at ([xshift=5em]m2.east) {\color{blue}取 A $\rightarrow$ $\alpha(j)$  \\
						\color{blue}\ding{172}POP($\alpha$); \\
						\color{blue}\ding{173}若 R(Xk,A)=Ai \\
						\color{blue} \hspace{1em}则 PUSH Ai;
					};
					\node (p1) at ([xshift=3em]d1.east) {\color{blue}err};
					\node (point2) at ([yshift=1em]e2.north) {};
					\node (point3) at ([yshift=-6.2em]e2.south) {};
					\node (point4) at ([xshift=-4.8em]point2) {};
					
					% 左边
					\node (m3) at ([xshift=-4em,yshift=0em]e1.west) {\color{blue}PUSH Wi};
					\node (point5) at ([yshift=-4.95em]m3.south) {};
					
					% 连线 
					\draw (s) -- (m1.north);
					\draw (m1.south) -- (m2.north);
					\draw (m2.south) -- (e1.north);
					\draw (e1.south) -- (d1.north);
					\draw (d1.south) -- node[right]{\color{blue}n}(point1.north);
					\draw (point1.north) -- node[right]{\color{blue}R=OK}(end.north);
					\draw (d1.east) -- node[above]{\color{blue}Y}(p1.west);
					% 左边斜线
					% \draw (point1.north) -| node[below]{\color{blue}移进}(m3.south);
					\draw [-] (point1.north) -- node[below]{\color{blue}R=Wi}(point5.north);
					\draw (point5.north) -- node[right]{\color{blue}移进}(m3.south);
					\draw (m3.north) |- ([yshift=-0.4em]m1.south);
					% 右边斜线
					\draw [-] (point1.north) -- node[below]{\color{blue}R=r(j)}(point3.north);
					\draw (point3.north) -- node[right]{\color{blue}归约}(e2.south);
					\draw [-] (e2.north) -- (point2.north);
					\draw [-] (point2.north) -- (point4.north);
					\draw (point4.north) |- ([yshift=-0.4em]m2.south);
					
					
					
				\end{scope}
			\end{tikzpicture}
		\end{center}
